<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 变量提升
        // var web = "hello.html";
        // console.log(web);
        // var class = 'hdcms';


        /**
         * 这段代码实际是 
         * var web;
         * console.log(web);
         * web = "hdcms.html";
         * 所以输出的是 undefined
         */
        // console.log(web); //这里并不会报错
        // var web = "hdcms.html";
        // if(true){
        //     console.log("abc");
        // }
        // function hd(){
        //     if(false){
        //         // 这里不执行但是在解析环节还是有变量提升
        //         var web = "baidu.com"; // 没有这一句话会报错
        //     }
        //     console.log(web);
        // }
        // hd();

        //let 和const暂时性死区TDC
        // let web = "baidu.com";  //let const 必须先声明再使用
        // console.log(web);

        // 下面的代码中 外层的web 不受影响 就近原则
        // let web = 'baidu.com';
        // function func(){
        //     let web = "nkmlsl.com";
        //     console.log(web);

        // }
        // func();
        // console.log(web);

        function run(a = b, b = 3) { }// 这里的b 不能先使用
        run();

    </script>
</body>

</html>